/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package conexaoBD;

import classes.Agenda;
import classes.Apresentador;
import classes.AreaTematica;
import classes.Artigo;
import classes.Atividade;
import classes.EventoPrincipal;
import classes.Minicurso;
import classes.Painel;
import classes.Palestra;
import classes.Palestrante;
import classes.Recurso;
import classes.Workshop;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Timestamp;
import java.util.ArrayList;

/**
 *
 * @author yuripadua
 */
public class mySQLcrud {

    private final mySQLconnection con = mySQLconnection.getInstance();
    private Connection connection;

    public mySQLcrud() {
        connection = con.getConnection();
    }

    // *********************    *******************************
    private boolean inserirRelacaoMiniCursoRecurso(int codMiniCurso, int codRecurso) {
        try {
            CallableStatement stmt = connection.prepareCall("{call uspInserirRelacaoMiniCursoRecurso(?, ?)}");
            stmt.setInt(1, codMiniCurso);
            stmt.setInt(2, codRecurso);
            stmt.execute();
            return true;
        } catch (SQLException ex) {
            return false;
        }
    }

    private boolean inserirRelacaoMiniCursoPalestrante(int codMiniCurso, int codPalestrante) {
        try {
            CallableStatement stmt = connection.prepareCall("{call uspInserirRelacaoMiniCursoPalestrante(?, ?)}");
            stmt.setInt(1, codMiniCurso);
            stmt.setInt(2, codPalestrante);
            stmt.execute();
            return true;
        } catch (SQLException ex) {
            return false;
        }
    }

    private boolean inserirRelacaoMiniCursoEventoPrincipal(int codMiniCurso, int codEventoPrincipal) {
        try {
            CallableStatement stmt = connection.prepareCall("{call uspInserirRelacaoEventoPrincipalMinicurso(?, ?)}");
            stmt.setInt(1, codMiniCurso);
            stmt.setInt(2, codEventoPrincipal);
            stmt.execute();
            return true;
        } catch (SQLException ex) {
            return false;
        }
    }

    // *********************    *******************************
    private ArrayList<Integer> consultaRelacaoMiniCursoPalestrante(int codMiniCurso) {

        ArrayList<Integer> listaRecursosUsadosMiniCursoEspecifico = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoMiniCursoPalestrante(" + codMiniCurso + ");");

            while (rs.next()) {
                int codRecur = rs.getInt(2);
                listaRecursosUsadosMiniCursoEspecifico.add(codRecur);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaRecursosUsadosMiniCursoEspecifico;
    }

    private ArrayList<Integer> consultaRelacaoMiniCursoRecurso(int codMiniCurso) {

        ArrayList<Integer> listaPalestranteRelacionadoMiniCursoEspecifico = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoMiniCursoRecurso(" + codMiniCurso + ");");

            while (rs.next()) {
                int codRecur = rs.getInt(2);
                listaPalestranteRelacionadoMiniCursoEspecifico.add(codRecur);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaPalestranteRelacionadoMiniCursoEspecifico;
    }

    private ArrayList<Integer> consultaRelacaoPainelApresentador(int codPainel) {

        ArrayList<Integer> listaApresentadorePainelEspecifico = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoPainelApresentador(" + codPainel + ");");

            while (rs.next()) {
                int codRecur = rs.getInt(1);
                listaApresentadorePainelEspecifico.add(codRecur);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaApresentadorePainelEspecifico;
    }

    private ArrayList<Integer> consultaRelacaoEventoPrincipalWorkshop(int codEventoPrincipal) {

        ArrayList<Integer> listaEventoWorkshopEventoEspecifico = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoEventoPrincipalWorkshop(" + codEventoPrincipal + ");");

            while (rs.next()) {
                int codRecur = rs.getInt(2);
                listaEventoWorkshopEventoEspecifico.add(codRecur);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaEventoWorkshopEventoEspecifico;
    }

    private ArrayList<Integer> consultaRelacaoEventoPrincipalMinicurso(int codEventoPrincipal) {

        ArrayList<Integer> listaEventoMinicursoEventoEspecifico = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoEventoPrincipalMinicurso(" + codEventoPrincipal + ");");

            while (rs.next()) {
                int codRecur = rs.getInt(2);
                listaEventoMinicursoEventoEspecifico.add(codRecur);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaEventoMinicursoEventoEspecifico;
    }

    private ArrayList<Integer> consultaRelacaoPalestraPalestrante(int codPalestra) {

        ArrayList<Integer> listaPalestraPalestrante = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoPalestraPalestrante(" + codPalestra + ");");

            while (rs.next()) {
                int codPalestrante = rs.getInt(2);
                listaPalestraPalestrante.add(codPalestrante);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaPalestraPalestrante;
    }

    private int consultaCodigoMiniCursoEspecifico(String nome, String descricao) {

        int codMinicurso = 0;
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoMiniCursoRecurso('" + nome + "','" + descricao + "');");

            while (rs.next()) {
                codMinicurso = rs.getInt(1);
            }
            return codMinicurso;
        } catch (SQLException ex) {
            return -1;
        }
    }

        public boolean inserirMinicurso(int codAg, int codAreaTematica, String nomeMini, int numVagas,
            String descricaoMini, EventoPrincipal eventoPrincipal, ArrayList<Recurso> listaRecursos,
            ArrayList<Palestrante> listaPalestrantes) {
        try {
            CallableStatement stmt = connection.prepareCall("{call uspInserirMinicurso(?, ?, ?, ?, ?)}");
            stmt.setInt(1, codAg);
            stmt.setInt(2, codAreaTematica);
            stmt.setString(3, nomeMini);
            stmt.setInt(4, numVagas);
            stmt.setString(5, descricaoMini);
            stmt.execute();

            int codMinicurso = consultaCodigoMiniCursoEspecifico(nomeMini, descricaoMini);

            for (Recurso r : listaRecursos) {
                inserirRelacaoMiniCursoRecurso(codMinicurso, r.getCodRecurso());
            }

            for (Palestrante p : listaPalestrantes) {
                inserirRelacaoMiniCursoPalestrante(codMinicurso, p.getCodPalestrante());
            }

            inserirRelacaoMiniCursoEventoPrincipal(codMinicurso, eventoPrincipal.getCodEventoPrincipal());//chama inserir codigo minicurso - codigo evento principal

            return true;
        } catch (SQLException ex) {
            return false;
        }
    }

    // *********************    *******************************
    public ArrayList<Agenda> listaAgenda(int codAg) {

        ArrayList<Agenda> listaAgenda = new ArrayList<Agenda>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (codAg != 0) {
                rs = stmt.executeQuery("call uspConsultarAgenda(" + codAg + ");");
            } else {
                rs = stmt.executeQuery("call uspConsultarAgenda(null);");
            }
            while (rs.next()) {
                int codAgenda = rs.getInt(1);
                Timestamp inicio = rs.getTimestamp(2);
                Timestamp fim = rs.getTimestamp(3);

                Agenda ev = new Agenda(codAgenda, inicio, fim);

                listaAgenda.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaAgenda;
    }

    public ArrayList<Recurso> listaRecursos(String paramRecurso) {

        ArrayList<Recurso> listaRecursos = new ArrayList<Recurso>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs;
            if (!paramRecurso.equals("")) {
                rs = stmt.executeQuery("call uspConsultarRecurso('" + paramRecurso + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarRecurso(null);");
            }



            while (rs.next()) {
                int codRecur = rs.getInt(1);
                String nomeRecurso = rs.getString(2);
                String tipoRecurso = rs.getString(3);

                Recurso rec = new Recurso(codRecur, nomeRecurso, tipoRecurso);
                listaRecursos.add(rec);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaRecursos;
    }

    public ArrayList<Painel> listaPainel(String paramPainel) {

        ArrayList<Painel> listaPainel = new ArrayList<Painel>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (!paramPainel.equals("")) {
                rs = stmt.executeQuery("call uspConsultarPainel('" + paramPainel + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarPainel(null);");
            }
            while (rs.next()) {
                int codPainel = rs.getInt(1);
                String nomeModerador = rs.getString(2);
                String instituicaoModerador = rs.getString(3);
                ArrayList<Integer> listaApresentadores = consultaRelacaoPainelApresentador(codPainel);
                Atividade atividadePainel = listaAtividade(codPainel);
                Painel ev = new Painel(codPainel, nomeModerador, instituicaoModerador, listaApresentadores, atividadePainel);

                listaPainel.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaPainel;
    }

    public ArrayList<Artigo> listaArtigo(String tituloArtigoParam) {

        ArrayList<Artigo> listaArtigo = new ArrayList<Artigo>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (!"".equals(tituloArtigoParam)) {
                rs = stmt.executeQuery("call uspConsultarArtigo('" + tituloArtigoParam + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarArtigo(null);");
            }
            while (rs.next()) {
                int codArtigo = rs.getInt(1);
                String tituloArtigo = rs.getString(2);
                String nomeAutro = rs.getString(3);

                Artigo ev = new Artigo(codArtigo, tituloArtigo, nomeAutro);

                listaArtigo.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaArtigo;
    }

    public ArrayList<AreaTematica> listaAreaTematica(String paramAreaTematica) {

        ArrayList<AreaTematica> listaAreaTematica = new ArrayList<AreaTematica>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (!"".equals(paramAreaTematica)) {
                rs = stmt.executeQuery("call uspConsultarAreaTematica('" + paramAreaTematica + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarAreaTematica(null);");
            }
            while (rs.next()) {
                int codAreaTematica = rs.getInt(1);
                String areaCiencia = rs.getString(2);
                String tema = rs.getString(3);

                AreaTematica ev = new AreaTematica(codAreaTematica, areaCiencia, tema);

                listaAreaTematica.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaAreaTematica;
    }

    private ArrayList<Integer> consultaRelacaoWorkshopArtigo(int codWorkshop) {

        ArrayList<Integer> listaRelacaoWorkshopArtigo = new ArrayList<Integer>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarRelacaoWorkshopArtigo(" + codWorkshop + ");");

            while (rs.next()) {
                int codArtigo = rs.getInt(2);
                listaRelacaoWorkshopArtigo.add(codArtigo);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaRelacaoWorkshopArtigo;
    }
     public ArrayList<Workshop> listaWorkshop(int codWshop) {

        ArrayList<Workshop> listaWorkshop = new ArrayList<Workshop>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (codWshop != 0) {
                rs = stmt.executeQuery("call uspConsultarWorkshop(" + codWshop + ");");
            } else {
                rs = stmt.executeQuery("call uspConsultarWorkshop(null);");
            }
            while (rs.next()) {
                int codWorkshop = rs.getInt(1);
                int codAgenda = rs.getInt(2);
                String nomeWorkshop = rs.getString(3);
                String temaPrincipal = rs.getString(4);
                ArrayList<Integer> codArtigo = consultaRelacaoWorkshopArtigo(codWshop);

                Workshop ev = new Workshop(codWorkshop, codAgenda, nomeWorkshop, temaPrincipal, codArtigo);
                        
                listaWorkshop.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaWorkshop;
    }
    
    public ArrayList<AreaTematica> listaAreaTematica(int paramAreaTematica) {

        ArrayList<AreaTematica> listaAreaTematica = new ArrayList<AreaTematica>();

        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarCodigoAreaTematica(" + paramAreaTematica + ");");

            while (rs.next()) {
                int codAreaTematica = rs.getInt(1);
                String areaCiencia = rs.getString(2);
                String tema = rs.getString(3);

                AreaTematica ev = new AreaTematica(codAreaTematica, areaCiencia, tema);

                listaAreaTematica.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaAreaTematica;
    }

    public ArrayList<EventoPrincipal> listaEventoPrincipal(String paramConsult) {

        ArrayList<EventoPrincipal> listaEventoPrincipal = new ArrayList<EventoPrincipal>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs;
            if (!paramConsult.equals("")) {
                rs = stmt.executeQuery("call uspConsultarEventoPrincipal('" + paramConsult + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarEventoPrincipal(null);");
            }

            while (rs.next()) {
                int codEvPrin = rs.getInt(1);
                String nomeEv = rs.getString(2);
                String localEv = rs.getString(3);
                int codAg = rs.getInt(4);
                ArrayList<Integer> codWorkshop = consultaRelacaoEventoPrincipalWorkshop(codEvPrin);
                ArrayList<Integer> codMinicurso = consultaRelacaoEventoPrincipalMinicurso(codEvPrin);

                EventoPrincipal ev = new EventoPrincipal(codEvPrin, codAg, nomeEv, localEv, codWorkshop, codMinicurso);

                listaEventoPrincipal.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaEventoPrincipal;
    }

    public ArrayList<EventoPrincipal> listaEventoPrincipal(int paramConsult) {

        ArrayList<EventoPrincipal> listaEventoPrincipal = new ArrayList<EventoPrincipal>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarCodigoEventoPrincipal(" + paramConsult + ");");

            while (rs.next()) {
                int codEvPrin = rs.getInt(1);
                String nomeEv = rs.getString(2);
                String localEv = rs.getString(3);
                int codAg = rs.getInt(4);
                ArrayList<Integer> codWorkshop = consultaRelacaoEventoPrincipalWorkshop(codEvPrin);
                ArrayList<Integer> codMinicurso = consultaRelacaoEventoPrincipalMinicurso(codEvPrin);

                EventoPrincipal ev = new EventoPrincipal(codEvPrin, codAg, nomeEv, localEv, codWorkshop, codMinicurso);

                listaEventoPrincipal.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaEventoPrincipal;
    }

    public ArrayList<Minicurso> listaMinicurso(String paramConsultaMiniCurso) {

        ArrayList<Minicurso> listaMinicurso = new ArrayList<Minicurso>();
        ResultSet rs;

        try {
            Statement stmt = connection.createStatement();
            if (!paramConsultaMiniCurso.equals("")) {
                rs = stmt.executeQuery("call uspConsultarMinicurso('" + paramConsultaMiniCurso + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarMinicurso(null);");
            }


            while (rs.next()) {
                int codMinicurso = rs.getInt(1);
                int codAgenda = rs.getInt(2);
                int codAreaTematica = rs.getInt(3);
                String nomeMinicurso = rs.getString(4);
                int numTotalVagas = rs.getInt(5);
                String descricaoMinicurso = rs.getString(6);
                ArrayList<Integer> listaPalestrantesMinicurso = consultaRelacaoMiniCursoPalestrante(codMinicurso);
                ArrayList<Integer> listaRecursosMinicurso = consultaRelacaoMiniCursoRecurso(codMinicurso);
                Minicurso mini = new Minicurso(codMinicurso,
                        codAgenda,
                        listaPalestrantesMinicurso,
                        codAreaTematica,
                        nomeMinicurso,
                        listaRecursosMinicurso,
                        numTotalVagas, descricaoMinicurso);

                listaMinicurso.add(mini);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaMinicurso;
    }

    public ArrayList<Palestrante> listaPalestrante(String paramPalestrante) {

        ArrayList<Palestrante> listaPalestrante = new ArrayList<Palestrante>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs;
            if (!paramPalestrante.equals("")) {
                rs = stmt.executeQuery("call uspConsultarPalestrante('" + paramPalestrante + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarPalestrante(null);");
            }

            while (rs.next()) {
                int codPalestra = rs.getInt(1);
                String nomePalestrante = rs.getString(2);
                String instituicaoPalestrante = rs.getString(3);
                String especializacaoPalestrante = rs.getString(4);

                Palestrante pales = new Palestrante(codPalestra, nomePalestrante, instituicaoPalestrante, especializacaoPalestrante);
                listaPalestrante.add(pales);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaPalestrante;
    }

    public ArrayList<Apresentador> listaApresentador(String paramApresentador) {

        ArrayList<Apresentador> listaApresentador = new ArrayList<Apresentador>();
        ResultSet rs;
        try {
            Statement stmt = connection.createStatement();
            if (!paramApresentador.equals("")) {
                rs = stmt.executeQuery("call uspConsultarApresentador('" + paramApresentador + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarApresentador(null);");
            }
            while (rs.next()) {
                int codPainel = rs.getInt(1);
                String nomeApresentador = rs.getString(2);
                String instituicaoApresentador = rs.getString(3);

                Apresentador ev = new Apresentador(codPainel, nomeApresentador, instituicaoApresentador);

                listaApresentador.add(ev);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaApresentador;
    }

    public ArrayList<Palestra> listaPalestra(String paramPalestra) {

        ArrayList<Palestra> listaPalestrante = new ArrayList<Palestra>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs;
            if (!paramPalestra.equals("")) {
                rs = stmt.executeQuery("call uspConsultarPalestra('" + paramPalestra + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarPalestra(null);");
            }

            while (rs.next()) {
                int codPalestra = rs.getInt(1);
                String resumoPalestra = rs.getString(2);
                ArrayList<Integer> listaPalestrantes = consultaRelacaoPalestraPalestrante(codPalestra);
                Atividade atividade = listaAtividade(codPalestra);

                Palestra pales = new Palestra(codPalestra, listaPalestrantes, resumoPalestra, atividade);
                listaPalestrante.add(pales);
            }
        } catch (SQLException ex) {
            return null;
        }
        return listaPalestrante;
    }

    public ArrayList<Atividade> listaAtividade(String paramConsult) {

        ArrayList<Atividade> listaAtividade = new ArrayList<Atividade>();
        try {
            Statement stmt = connection.createStatement();
            ResultSet rs;
            if (!paramConsult.equals("")) {
                rs = stmt.executeQuery("call uspConsultarAtividade('" + paramConsult + "');");
            } else {
                rs = stmt.executeQuery("call uspConsultarAtividade(null);");
            }

            while (rs.next()) {
                int codAtiv = rs.getInt(1);
                int codAgen = rs.getInt(2);
                int codTema = rs.getInt(3);
                String tituloAtividade = rs.getString(4);
                String tipoAtividade = rs.getString(5);
                int numVagas = rs.getInt(6);
                ArrayList<Integer> listaCodRecurso = new ArrayList<Integer>();

                Atividade atd = new Atividade(codAtiv, codTema, codAgen, tituloAtividade, tipoAtividade, listaCodRecurso, numVagas);

                listaAtividade.add(atd);
            }
        } catch (SQLException ex) {
            return null;
        }

        return listaAtividade;
    }

    public Atividade listaAtividade(int paramConsult) {

        try {
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery("call uspConsultarCodigoAtividade('" + paramConsult + "');");

            while (rs.next()) {
                int codAtiv = rs.getInt(1);
                int codAgen = rs.getInt(2);
                int codTema = rs.getInt(3);
                String tituloAtividade = rs.getString(4);
                String tipoAtividade = rs.getString(5);
                int numVagas = rs.getInt(6);
                ArrayList<Integer> listaCodRecurso = new ArrayList<Integer>();

                Atividade atd = new Atividade(codAtiv, codTema, codAgen, tituloAtividade, tipoAtividade, listaCodRecurso, numVagas);

                return atd;
            }
        } catch (SQLException ex) {
            return null;
        }
        return null;

    }
    //************************************************************************************


            int codMinicurso = consultaCodigoMiniCursoEspecifico(nomeMini, descricaoMini);

            for (Recurso r : listaRecursos) {
                inserirRelacaoMiniCursoRecurso(codMinicurso, r.getCodRecurso());
            }

            for (Palestrante p : listaPalestrantes) {
                inserirRelacaoMiniCursoPalestrante(codMinicurso, p.getCodPalestrante());
            }

            inserirRelacaoMiniCursoEventoPrincipal(codMinicurso, eventoPrincipal.getCodEventoPrincipal());//chama inserir codigo minicurso - codigo evento principal

            return true;
        } catch (SQLException ex) {
            return false;
        }
    } 
        public boolean inserirWorkshop(int codAg, int codAreaTematica, String nomeMini, int numVagas,
            String descricaoMini, EventoPrincipal eventoPrincipal, ArrayList<Recurso> listaRecursos,
            ArrayList<Palestrante> listaPalestrantes) {
        try {
            CallableStatement stmt = connection.prepareCall("{call uspInserirMinicurso(?, ?, ?, ?, ?)}");
            stmt.setInt(1, codAg);
            stmt.setInt(2, codAreaTematica);
            stmt.setString(3, nomeMini);
            stmt.setInt(4, numVagas);
            stmt.setString(5, descricaoMini);
            stmt.execute();

            int codMinicurso = consultaCodigoMiniCursoEspecifico(nomeMini, descricaoMini);

            for (Recurso r : listaRecursos) {
                inserirRelacaoMiniCursoRecurso(codMinicurso, r.getCodRecurso());
            }

            for (Palestrante p : listaPalestrantes) {
                inserirRelacaoMiniCursoPalestrante(codMinicurso, p.getCodPalestrante());
            }

            inserirRelacaoMiniCursoEventoPrincipal(codMinicurso, eventoPrincipal.getCodEventoPrincipal());//chama inserir codigo minicurso - codigo evento principal

            return true;
        } catch (SQLException ex) {
            return false;
        }
    }
}
